//
//  ZBDBaseViewController.h
//  ZDB
//
//

#import <UIKit/UIKit.h>
/**
 *  BaseViewController代理方法
 */
@protocol BaseViewControllerDelegate <NSObject>

/**
 *  预留代理接口
 */
@end

/**
 *  Controller基类：BaseViewController
 */
@interface ZBDBaseViewController : UIViewController
/**
 *  打印日志情况默认YES
 */
@property(nonatomic,assign)BOOL axcBasePrintLog;


/**
 *  上拉加载下拉刷新页数page
 */
@property(nonatomic,assign)int page;

///**
// *  自带声明一个tableView对象
// */
//@property(nonatomic,strong)UITableView * tableView;

/**
 *  是否开启全继承左滑返回手势 默认NO
 */
@property(nonatomic,assign)BOOL OpenTheLeftBackOfAll;

@property(nonatomic,strong)NSMutableArray * modelsArry;
/**
 *  预留代理
 */
@property(nonatomic,weak)id <BaseViewControllerDelegate> delegate;

/**
 *  基类请求数据
 */
- (void)axcBaseRequestData;

/**
 *  基类添加右图片按钮
 *
 *  @param image image类型
 */
- (void)axcBaseAddRightBtnWithImage:(UIImage * )image;

/**
 *  基类右图片按钮触发方法
 *
 *  @param sender UIButton
 */
- (void)axcBaseClickBaseRightImageBtn:(UIButton *)sender;
- (void)axcBaseClickBaseRightTitleStr:(NSString *)titleStr;

/**
 *  基类添加右系统风格按钮
 *
 *  @param type UIBarButtonSystemItem类型
 */
- (void)axcBaseAddRightBtnWithType:(UIBarButtonSystemItem)type;

/**
 *  基类右图片按钮触发方法
 *
 *  @param sender UIBarButtonItem
 */
- (void)axcBaseClickBaseRightTypeBtn:(UIBarButtonItem * )sender;
/**
 *  下拉刷新
 */
- (void)axcBaseLoadNewData;

/**
 *  上拉加载
 */
- (void)axcBaseLoadMoreData;

/**
 *  状态栏显示深色
 *  @param statusBarStyleIsDark 显示深色
 */
- (void)statusBarStyleIsDark:(BOOL)statusBarStyleIsDark;
/**
 *  禁止左滑
 *  @param enabled 禁止左滑
 */
- (void)SetTheLoadProperties:(BOOL)enabled;

/**
 *  设置导航栏背景色
 *  @param color 颜色
 *  @param Alpha 透明度
 */
- (void)SetnavigationBarBackgroundImage:(UIColor *_Nonnull)color Alpha:(NSInteger)Alpha;

/**
 *  设置导航栏Title颜色TitleColor
 *  @param color 颜色
 */
- (void)SetNavigationBarTitleColor:(UIColor *_Nonnull)color;

/**
 *  设置导航栏下的线
 *  @param isLine 是否隐藏
 */
- (void)barLine:(BOOL)isLine;

/*
  加载动画
 */
- (void)showLoadingAnimation;
/*
  停止加载动画
 */
- (void)stopLoadingAnimation;

/**
 *  重写nav 返回按钮
 */
- (void)initBackButton:(BOOL)left; //default is NO;

/**
 *  重写导航 返回按钮
 */
- (void)didBack;


@end
